/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package otcapp.controlador.modelocombobox;

import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import javax.swing.DefaultComboBoxModel;
import otcapp.entidades.Localidad;

/**
 *
 * @author diego
 */
public class ModeloComboLocalidad  extends DefaultComboBoxModel implements Comparator<Localidad> {

    private List<Localidad> listaLocalidades;

    public ModeloComboLocalidad(List<Localidad> localidades) {
        listaLocalidades = localidades;
        addElement("Seleccione una Localidad");
        for (Localidad localidad : localidades) {
            addElement(localidad.getNombreLocalidad());

        }

    }
       
    public Localidad getLocalidadSeleccionada() {
        Localidad localidadEncontrada = null;
        for (Localidad localidad : listaLocalidades) {
            if (localidad.getNombreLocalidad().equals(super.getSelectedItem().toString())) {
                localidadEncontrada = localidad;
            }
        }

        return localidadEncontrada;

    }
   

    public void setLocalidadSeleccionada(Localidad localidadSelec) {
        if (listaLocalidades != null) {
            for (Localidad localidad : listaLocalidades) {
                if (localidad.getNombreLocalidad().equals(localidadSelec.getNombreLocalidad())) {
                    setSelectedItem(localidadSelec.getNombreLocalidad());
                }
            }
        }
    }

     public void ordenar() {
        Collections.sort(listaLocalidades, this);
        removeAllElements();
        addElement("Seleccione una Localidad");

        for (Localidad localidad : listaLocalidades) {
            addElement(localidad.getNombreLocalidad());

        }
    }

    @Override
    public int compare(Localidad l1, Localidad l2) {
        return l1.getNombreLocalidad().compareToIgnoreCase(l1.getNombreLocalidad());
    }
}

